home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor1 / morse.src < prev    next >
Text File  |  1991-02-21  |  4KB  |  112 lines

  1. %%HP: T(3)A(D)F(.);
  2. @ MORSE
  3. @ by Andrew Delano
  4. DIR
  5.   \->MRS
  6.     \<< \->STK "" 'CODE' STO
  7.       DO
  8.         CASE DUP "A" SAME
  9.           THEN dot bar end DROP " *- " CSTO
  10.           END DUP "B" SAME
  11.           THEN bar dot dot dot end DROP " -*** " CSTO
  12.           END DUP "C" SAME
  13.           THEN bar dot bar dot end DROP " -*-* " CSTO
  14.           END DUP "D" SAME
  15.           THEN bar dot dot end DROP " -** " CSTO
  16.           END DUP "E" SAME
  17.           THEN dot end DROP " * " CSTO
  18.           END DUP "F" SAME
  19.           THEN dot dot bar dot end DROP " **-* " CSTO
  20.           END DUP "G" SAME
  21.           THEN bar bar dot end DROP " --* " CSTO
  22.           END DUP "H" SAME
  23.           THEN dot dot dot dot end DROP " **** " CSTO
  24.           END DUP "I" SAME
  25.           THEN dot dot end DROP " ** " CSTO
  26.           END DUP "J" SAME
  27.           THEN dot bar bar bar end DROP " *--- " CSTO
  28.           END DUP "K" SAME
  29.           THEN bar dot bar end DROP " -*- " CSTO
  30.           END DUP "L" SAME
  31.           THEN dot bar dot dot end DROP " *-** " CSTO
  32.           END DUP "M" SAME
  33.           THEN bar bar end DROP " -- " CSTO
  34.           END DUP "N" SAME
  35.           THEN bar dot end DROP " -* " CSTO
  36.           END DUP "O" SAME
  37.           THEN bar bar bar end DROP " --- " CSTO
  38.           END DUP "P" SAME
  39.           THEN dot bar bar dot end DROP " *--* " CSTO
  40.           END DUP "Q" SAME
  41.           THEN bar bar dot bar end DROP " --*- " CSTO
  42.           END DUP "R" SAME
  43.           THEN dot bar dot end DROP " *-* " CSTO
  44.           END DUP "S" SAME
  45.           THEN dot dot dot end DROP " *** " CSTO
  46.           END DUP "T" SAME
  47.           THEN bar end DROP " - " CSTO
  48.           END DUP "U" SAME
  49.           THEN dot dot bar end DROP " **- " CSTO
  50.           END DUP "V" SAME
  51.           THEN dot dot dot bar end DROP " ***- " CSTO
  52.           END DUP "W" SAME
  53.           THEN dot bar bar end DROP " *-- " CSTO
  54.           END DUP "X" SAME
  55.           THEN bar dot dot bar end DROP " -**- " CSTO
  56.           END DUP "Y" SAME
  57.           THEN bar dot bar bar end DROP " -*-- " CSTO
  58.           END DUP "Z" SAME
  59.           THEN bar bar dot dot end DROP " --** " CSTO
  60.           END DUP " " SAME
  61.           THEN end end end DROP "SPC" CSTO
  62.           END DUP "1" SAME
  63.           THEN dot bar bar bar bar end DROP " *---- " CSTO
  64.           END DUP "2" SAME
  65.           THEN dot dot bar bar bar DROP " **--- " CSTO
  66.           END DUP "3" SAME
  67.           THEN dot dot dot bar bar end DROP " ***-- " CSTO
  68.           END DUP "4" SAME
  69.           THEN dot dot dot dot bar end DROP " ****- " CSTO
  70.           END DUP "5" SAME
  71.           THEN dot dot dot dot dot end DROP " ***** " CSTO
  72.           END DUP "6" SAME
  73.           THEN bar dot dot dot dot end DROP " -**** " CSTO
  74.           END DUP "7" SAME
  75.           THEN bar bar dot dot dot end DROP " --*** " CSTO
  76.           END DUP "8" SAME
  77.           THEN bar bar bar dot dot end DROP " ---** " CSTO
  78.           END DUP "9" SAME
  79.           THEN bar bar bar bar dot end DROP " ----* " CSTO
  80.           END DUP "0" SAME
  81.           THEN bar bar bar bar bar end DROP " ----- " CSTO
  82.           END DUP "." SAME
  83.           THEN dot bar dot bar dot bar end DROP " *-*-*- " CSTO
  84.           END DUP "," SAME
  85.           THEN bar bar dot dot bar bar end DROP " --**-- " CSTO
  86.           END
  87.         END
  88.       UNTIL DEPTH 0 ==
  89.       END
  90.     \>>
  91.   ALPH ""
  92.   CODE ""
  93.   \->STK
  94.     \<< 'ALPH' STO ALPH SIZE 'B' STO
  95.       DO ALPH B DUP SUB B 1 - 'B' STO
  96.       UNTIL B 0 ==
  97.       END 'B' PURGE
  98.     \>>
  99.   bar
  100.     \<< 660 .25 BEEP .01 WAIT
  101.     \>>
  102.   dot
  103.     \<< 660 .125 BEEP .01 WAIT
  104.     \>>
  105.   end
  106.     \<< .025 WAIT
  107.     \>>
  108.   CSTO
  109.     \<< CODE SWAP + 'CODE' STO
  110.     \>>
  111. END
  112.